package cn.topevery.garden.entity.vo;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 项目招标表 视图
 *
 * @author code-generate
 * @date 2022-11-02
 */
@Data
@ApiModel(value = "ProjBid 视图", description = "项目招标表 视图")
public class ProjBidVO implements Serializable {
    /**
     * 自增id
     */
    private Integer id;

    /**
     * 项目招标ID
     */
    @ApiModelProperty(value = "项目招标ID")
    @Excel(name = "项目招标ID", orderNum = "0")
    private String projBidId;

    /**
     * 项目ID
     */
    @ApiModelProperty(value = "项目ID")
    @Excel(name = "项目ID", orderNum = "0")
    private String projId;

    /**
     * 招标方式（字典）
     */
    @ApiModelProperty(value = "招标方式（字典）")
    @Excel(name = "招标方式（字典）", orderNum = "0")
    private String bidWay;

    /**
     * 招标时间
     */
    @ApiModelProperty(value = "招标时间")
    @Excel(name = "招标时间", orderNum = "0")
    private LocalDate bidTime;

    /**
     * 招标内容
     */
    @ApiModelProperty(value = "招标内容")
    @Excel(name = "招标内容", orderNum = "0")
    private String bidContent;

    /**
     * 招标人
     */
    @ApiModelProperty(value = "招标人")
    @Excel(name = "招标人", orderNum = "0")
    private String bidPersonName;

    /**
     * 招标代表机构
     */
    @ApiModelProperty(value = "招标代表机构")
    @Excel(name = "招标代表机构", orderNum = "0")
    private String bidAgentOrgan;

    /**
     * 挂网时间
     */
    @ApiModelProperty(value = "挂网时间")
    @Excel(name = "挂网时间", orderNum = "0")
    private LocalDate hangNetDate;

    /**
     * 开标时间
     */
    @ApiModelProperty(value = "开标时间")
    @Excel(name = "开标时间", orderNum = "0")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime bidOpenTime;

    /**
     * 招标限价金额（元）
     */
    @ApiModelProperty(value = "招标限价金额（元）")
    @Excel(name = "招标限价金额（元）", orderNum = "0")
    private BigDecimal bidLimitPrice;

    /**
     * 中标单位
     */
    @ApiModelProperty(value = "中标单位")
    @Excel(name = "中标单位", orderNum = "0")
    private String winBidOmpany;

    /**
     * 中标联系人
     */
    @ApiModelProperty(value = "中标联系人")
    @Excel(name = "中标联系人", orderNum = "0")
    private String winPersonName;

    /**
     * 中标联系电话
     */
    @ApiModelProperty(value = "中标联系电话")
    @Excel(name = "中标联系电话", orderNum = "0")
    private String winPersonPhone;

    /**
     * 中标内容
     */
    @ApiModelProperty(value = "中标内容")
    @Excel(name = "中标内容", orderNum = "0")
    private String winBidContent;

    /**
     * 中标价格（元）
     */
    @ApiModelProperty(value = "中标价格（元）")
    @Excel(name = "中标价格（元）", orderNum = "0")
    private BigDecimal winBidPrice;

    /**
     * 中标时间
     */
    @ApiModelProperty(value = "中标时间")
    @Excel(name = "中标时间", orderNum = "0")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime winBidDate;

    /**
     * 招标状态（1 招标中 2 已中标）
     */
    @ApiModelProperty(value = "招标状态（1 招标中 2 已中标）")
    @Excel(name = "招标状态（1 招标中 2 已中标）", orderNum = "0")
    private Integer bidState;

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    @Excel(name = "创建人", orderNum = "0")
    private String dbCreateId;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @Excel(name = "创建时间", orderNum = "0")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime dbCreateDate;

    /**
     * 修改人
     */
    @ApiModelProperty(value = "修改人")
    @Excel(name = "修改人", orderNum = "0")
    private String dbLastUpdateId;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @Excel(name = "修改时间", orderNum = "0")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime dbLastUpdateDate;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    @Excel(name = "备注", orderNum = "0")
    private String remark;

    /**
     * 排序号
     */
    @ApiModelProperty(value = "排序号")
    @Excel(name = "排序号", orderNum = "0")
    private Integer orderNum;

    @ApiModelProperty(value = "经办人")
    @Excel(name = "经办人", orderNum = "0")
    private String operator;

    private LocalDate hangNetEndDate;
    private String proxyCompany;
    private String proxyCompanyPerson;
    private String proxyCompanyTel;
    private String director;
    private String technicalDirector;
    private String projectManager;
    private String legalPerson;
}
